package com.iot.service.mqtt.retry;

/**
 * @Author: hszhou
 * @Date: 2025/5/7 9:05
 * @Description: 消息的重发策略
 */
public interface RetryStrategy {



    /**
     * 重发消息
     * @author hszhou
     * @datetime: 2025-05-12 08:34:30
     * @param req 发送的消息
     * @param clientId 客户端ID
     **/
    void retry(TlRetryMessage req,String clientId);

    /**
     * 取消重发消息
     * @author hszhou
     * @datetime: 2025-05-12 08:35:07
     * @param messageId  消息
     **/
    void cancel(Long messageId);


    /**
     * 移除会话信息
     * @author hszhou
     * @datetime: 2025-05-12 08:35:30
     * @param clientId 客户端id
     **/
    void removeSession(String clientId);
}
